3.5 Dokumentácia
Každá etapa má svoj "produkt", dokumentáciu (viď Obr. 3.2). Po ukončení vývoja programu musíme zachovať všetky dokumentácie. Len na základe úplnej dokumentácie sa dá urobiť neskôr akákoľvek požadovaná zmena. Súhrn všetkých dokumentácií nazývame vývojovou dokumentáciou.
Súčasti vývojovej dokumentácie:
- Zadanie
- Návrh programu
- Zdrojový program
- Hotový program
- Súbor testovacích údajov
K hotovej vývojovej dokumentácii patrí ešte jeden dokument - užívateľská príručka, ktorá obsahuje potrebné informácie pre užívateľa.
Súčasti užívateľskej dokumentácie:
- Popis úlohy.
- Požiadavky na hardvér. Typ počítača a minimálna požadovaná konfigurácia, nutná pre beh programu.
- Požiadavky na softvér. Operačný systém a požadované programové vybavenie potrebné pre beh programu.
- Vývojové prostredie, programovací jazyk.
- Inštalácia programu a jeho spustenie.
- Podrobný popis užívania programu: použitie kláves, popis všetkých možných situácií v procese behu programu, možnosti vyžiadania pomoci.
- Popisy obrazoviek a zoznamov.
- Uvedenie možných chybových hlásení, nápoveda, potrebné činnosti.
- Bezpečnostné predpisy (napr. Zachovanie údajov po istých časových intervaloch).
 Obr. 3.2. Produkty jednotlivých fáz vývoja programu |
3.6 Životnosť softvéru
Pravdepodobne prvý pokus nikdy nebude ideálny. Vrátime sa do jednej z predchádzajúcich etáp a pohľadáme miesto, kde sme sa dopustili chyby. Opravu potom musíme previesť cez všetky etapy. Čím presnejšie urobíme jednotlivé etapy, tým menej krát sa budeme musieť vracať do predchádzajúcich etáp. Pri tvorbe by sme sa mali riadiť príslovkou: "pomalšie ďalej zájdeš".
Veľmi často sa stáva, že objednávateľ počas riešenia zmení úlohu a úloha viac-menej sa modifikuje. Aj menšia požiadavka na zmenu v neskorších etapách môže podstatne zmeniť riešenie a teda môže byť veľmi bolestivou. Z toho vyplýva, že znenie úlohy musí byť presné a nesmieme pripustiť nepresnosť v špecifikácií úlohy. Túto špecifikáciu objednávateľ musí odsúhlasiť.
Ukončením vývoja softvéru sa nekončí jeho život. Aj po konečnom odovzdaní programu ešte sa môžu objaviť chyby. Tieto vo väčšine prípadov sú menšie skryté chyby tzv. bugy (chrobáky). V takom prípade objednávateľ reklamuje a my tie chyby musíme opraviť. Je prirodzené, že na základe požiadaviek objednávateľa treba modifikovať program. Počas používania objednávateľa môžu napadnúť nové podnety, ktoré by chcel realizovať. Ako sa vraví počas jedla sa zväčšuje chuť. Tieto činnosti - opravy chýb a doplňujúce modifikácie sa nazývajú údržbou (maintenance), a podľa skúseností tvoria 70% času celého riešenia úlohy. Údržba softvéru sa robí podľa dokumentácie a musí sa vrátiť až do časti rozvoja (viď Obr. 3.3). Rozvojári softvéru už dávno prišli na to, že údržba systému je ľahká iba v tom prípade, ak sa rozvoj robí podľa istých pravidiel.
 Obr. 3.3. Život softvéru |
Upravený resp. zmenený softvér sa zvykne označiť číslom verzie. V prípade menších opráv číslo verzie sa zväčší iba o desatinu resp. o stotinu. V prípade väčších zmien sa zväčší celá časť čísla verzie. Na túto zmenu čísla verzie nie sú presné pravidlá. Výrobcovia ich menia podľa vlastného uváženia. V prípade veľmi veľkej zmeny nie je vylúčená ani zmena názvu softvéru. Napríklad čísla verzie Turbo Pascalu sú 3.0, 4.0, 5.0, 5.5, 6.0, 7.0 atď.
V prípade väčších programových systémov rôzne etapy rozvoja zvyknú vykonávať rôzni odborníci. Analýzu vykonáva návrhár systému, návrh programu robí návrhár programu, kódovanie (programovanie) robí programátor. Testovanie je úlohou predovšetkým programátora. V súčasnosti sa tieto činnosti ostro nerozdeľujú (hlavne v prípadoch menších programov). Dokonca v prípade veľmi malých programov je možné priamo písať zdroják, ale iba v tom prípade, keď návrh programu máme jasne v hlave. Niekto aj väčšie programy dokáže premyslieť v hlave iný na to potrebuje papier a ceruzku. Jedno je podstatné: programovanie nie je improvizácia, ale je to vážna tvorivá práca, kde sme zodpovedný tak za program ako aj za jeho čitateľnosť a opravovateľnosť. Dobrý a spoľahlivý program môžeme vytvoriť iba plánovaním a podrobnou prípravou. V súčasnej dobe, v dobe prísnych noriem iba takto môžeme zostať konkurencie schopnými. Je veľmi dôležité, aby programátor urobil v tomto duchu už hneď prvé kroky.
Vzniklo už množstvo predstáv a metodík o každom kroku vývoja systému. Dnešný ubehaný svet so svojimi stále zväčšujúcimi sa požiadavkami na softvér však podnecuje a vytvára stále novšie a novšie metodiky. Cieľom tejto práce nemôže byť ani len ich vymenovanie. Ale pokúsime položiť základy navrhovania programov a tvorby algoritmov.
Samozrejme obmedzený priestor nám neumožňuje uviesť celý proces tvorby pre všetky uvedené programy, ale to ani nie je potrebné. Uvedieme iba také algoritmy a programovacie techniky, ktoré sú dosť krátke na to aby nevyžadovali dlhšie navrhovanie.
|